class PenjualansController < ApplicationController
  # GET /penjualans
  # GET /penjualans.json
  #layout'Transaksi_layout'
  
  def index
    @penjualans = Penjualan.all

    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @penjualans }
    end
  end

  # GET /penjualans/1
  # GET /penjualans/1.json
  def show
    @penjualan = Penjualan.find(params[:id])

    respond_to do |format|
      format.html # show.html.erb
      format.json { render json: @penjualan }
    end
  end

  # GET /penjualans/new
  # GET /penjualans/new.json
  def new
    @penjualan = Penjualan.new

    respond_to do |format|
      format.html # new.html.erb
      format.json { render json: @penjualan }
    end
  end

  # GET /penjualans/1/edit
  def edit
    @penjualan = Penjualan.find(params[:id])
    
    
  end

  # POST /penjualans
  # POST /penjualans.json
  def create
    @penjualan = Penjualan.new(params[:penjualan])

    respond_to do |format|
      if @penjualan.save
        format.html { redirect_to @penjualan, notice: 'Penjualan was successfully created.' }
        format.json { render json: @penjualan, status: :created, location: @penjualan }
      else
        format.html { render action: "new" }
        format.json { render json: @penjualan.errors, status: :unprocessable_entity }
      end
    end
  end

  # PUT /penjualans/1
  # PUT /penjualans/1.json
  def update
    @penjualan = Penjualan.find(params[:id])

    respond_to do |format|
      if @penjualan.update_attributes(params[:penjualan])
        format.html { redirect_to @penjualan, notice: 'Penjualan was successfully updated.' }
        format.json { head :ok }
      else
        format.html { render action: "edit" }
        format.json { render json: @penjualan.errors, status: :unprocessable_entity }
      end
    end
  end

  # DELETE /penjualans/1
  # DELETE /penjualans/1.json
  def destroy
    @penjualan = Penjualan.find(params[:id])
    @penjualan.destroy

    respond_to do |format|
      format.html { redirect_to penjualans_url }
      format.json { head :ok }
    end
  end
  
  def pos
    
    @penjualan = Penjualan.new
    @penjualan.save
    
    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @penjualans }
    end
  end
  
  def menyimpan_penjualan
  
    if params[:cash].to_i >= params[:total_pembayaran].to_i
      @penjualan_transaksi = Penjualan.find(params[:penjualanid])
      
      @total_hpokok = PenjualanSub.where('penjualanid =?',params[:penjualanid]).sum("hargapokok")
      @total_hjual = PenjualanSub.where('penjualanid =?',params[:penjualanid]).sum("hargajual")
      
      @penjualan_transaksi.thargapokok = @total_hpokok
      @penjualan_transaksi.thargajual = @total_hjual
      @penjualan_transaksi.cash = params[:cash]
      @penjualan_transaksi.save
      
      @kembalian = params[:cash].to_i - params[:total_pembayaran].to_i
      @datacheck = true
      
      @penjualan_subs = PenjualanSub.where('penjualanid =?', params[:penjualanid].to_s)
      
      @penjualan_subs.each do |p|
        @barang = Barang.new
        @barang = Barang.find(p.barangid)
        @barang.stok = @barang.stok - p.qty
        p.status = 1
        p.save
        @barang.save  
      end
      
      @penjualan = Penjualan.new
      @penjualan.save
      
    else
      @datacheck = false
      @error = "Uang belum cukup!"
    end
     
    respond_to do |format|
      format.js { render layout: false }
    end
  end
end
